filechooserentry: Don't show files when selecting directory
authorBenjamin Otte <otte@redhat.com>
Mon, 7 Nov 2011 14:02:34 +0000 (15:02 +0100)
committerBenjamin Otte <otte@redhat.com>
Fri, 16 Dec 2011 19:09:14 +0000 (20:09 +0100)
We don't want to complete on files when they're not supposed to be
selectable.

gtk/gtkfilechooserentry.c

index 88ddc30c41d55605537c98274a8135f7a8310858..4219f2f6660796b0bce6a9d1757ea00d1e733356 100644 (file)
@@ -497,6 +497,9 @@ populate_completion_store (GtkFileChooserEntry *chooser_entry)
 
   _gtk_file_system_model_set_filter_folders (GTK_FILE_SYSTEM_MODEL (chooser_entry->completion_store),
                                              TRUE);
+  _gtk_file_system_model_set_show_files (GTK_FILE_SYSTEM_MODEL (chooser_entry->completion_store),
+                                         chooser_entry->action == GTK_FILE_CHOOSER_ACTION_OPEN ||
+                                         chooser_entry->action == GTK_FILE_CHOOSER_ACTION_SAVE);
   gtk_tree_sortable_set_sort_column_id (GTK_TREE_SORTABLE (chooser_entry->completion_store),
                                        DISPLAY_NAME_COLUMN, GTK_SORT_ASCENDING);
 
@@ -815,6 +818,11 @@ _gtk_file_chooser_entry_set_action (GtkFileChooserEntry *chooser_entry,
          gtk_entry_completion_set_popup_single_match (comp, TRUE);
          break;
        }
+
+      if (chooser_entry->completion_store)
+        _gtk_file_system_model_set_show_files (GTK_FILE_SYSTEM_MODEL (chooser_entry->completion_store),
+                                               action == GTK_FILE_CHOOSER_ACTION_OPEN ||
+                                               action == GTK_FILE_CHOOSER_ACTION_SAVE);
     }
 }